//
//  JJInterpolatorLinearSlowIn.swit
//
//  Created by Juan J L on 3/24/20.
//  Copyright © 2020 Juan J L. All rights reserved.
//

import Foundation

/**
   Interpolator
   Uses a Lookup table for bezier curve from 0 to 1,1 with control points:
   P0 (0,0)
   P1 (0.4,0)
   P2 (0.2,1.0)
   P3 (1,1)
*/
public class JJInterpolatorLinearOutSlowIn : JJInterpolatorLookupTable {
    
    /**
        Lookup table values sampled with x at regular intervals between 0 and 1 for a
        total of 201 points
    */
    public static let VALUES : [Float] = [
               0.0000, 0.0222, 0.0424, 0.0613, 0.0793, 0.0966, 0.1132,
               0.1293, 0.1449, 0.1600, 0.1747, 0.1890, 0.2029, 0.2165,
               0.2298, 0.2428, 0.2555, 0.2680, 0.2802, 0.2921, 0.3038,
               0.3153, 0.3266, 0.3377, 0.3486, 0.3592, 0.3697, 0.3801,
               0.3902, 0.4002, 0.4100, 0.4196, 0.4291, 0.4385, 0.4477,
               0.4567, 0.4656, 0.4744, 0.4831, 0.4916, 0.5000, 0.5083,
               0.5164, 0.5245, 0.5324, 0.5402, 0.5479, 0.5555, 0.5629,
               0.5703, 0.5776, 0.5847, 0.5918, 0.5988, 0.6057, 0.6124,
               0.6191, 0.6257, 0.6322, 0.6387, 0.6450, 0.6512, 0.6574,
               0.6635, 0.6695, 0.6754, 0.6812, 0.6870, 0.6927, 0.6983,
               0.7038, 0.7093, 0.7147, 0.7200, 0.7252, 0.7304, 0.7355,
               0.7406, 0.7455, 0.7504, 0.7553, 0.7600, 0.7647, 0.7694,
               0.7740, 0.7785, 0.7829, 0.7873, 0.7917, 0.7959, 0.8002,
               0.8043, 0.8084, 0.8125, 0.8165, 0.8204, 0.8243, 0.8281,
               0.8319, 0.8356, 0.8392, 0.8429, 0.8464, 0.8499, 0.8534,
               0.8568, 0.8601, 0.8634, 0.8667, 0.8699, 0.8731, 0.8762,
               0.8792, 0.8823, 0.8852, 0.8882, 0.8910, 0.8939, 0.8967,
               0.8994, 0.9021, 0.9048, 0.9074, 0.9100, 0.9125, 0.9150,
               0.9174, 0.9198, 0.9222, 0.9245, 0.9268, 0.9290, 0.9312,
               0.9334, 0.9355, 0.9376, 0.9396, 0.9416, 0.9436, 0.9455,
               0.9474, 0.9492, 0.9510, 0.9528, 0.9545, 0.9562, 0.9579,
               0.9595, 0.9611, 0.9627, 0.9642, 0.9657, 0.9672, 0.9686,
               0.9700, 0.9713, 0.9726, 0.9739, 0.9752, 0.9764, 0.9776,
               0.9787, 0.9798, 0.9809, 0.9820, 0.9830, 0.9840, 0.9849,
               0.9859, 0.9868, 0.9876, 0.9885, 0.9893, 0.9900, 0.9908,
               0.9915, 0.9922, 0.9928, 0.9934, 0.9940, 0.9946, 0.9951,
               0.9956, 0.9961, 0.9966, 0.9970, 0.9974, 0.9977, 0.9981,
               0.9984, 0.9987, 0.9989, 0.9992, 0.9994, 0.9995, 0.9997,
               0.9998, 0.9999, 0.9999, 1.0000, 1.0000
    ]
    
    public init() {
        super.init(values: JJInterpolatorLinearOutSlowIn.VALUES)
    }
}

